package com.rzjm.exercise.sys.system.user.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.rzjm.exercise.common.utils.ExcelColumn;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

@Data
@TableName("sys_user")
public class UserDO implements Serializable {
    private static final long serialVersionUID = 1L;

    @TableId(type = IdType.AUTO)
    private Integer userId;
    //角色
    private Integer roleId;
    // 用户名
    private String username;
    // 用户真实姓名
    private String name;
    // 密码
    private String password;
    // 店铺
    private Integer deptId;
    @TableField(exist = false)
    private String deptName;
    // 邮箱
    private String email;
    // 手机号
    private String mobile;
    // 状态 0:禁用，1:正常
    private Integer status;
    // 创建时间
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date gmtCreate;
    private Integer userType;
    private Integer groupId; //集团id
    private Integer jituanId;//集团管理员账号id
    private Integer pianquId;//片区id
    private Integer pianquUserId;//片区管理员账号id
    private Integer fenchangId;//分厂账号id
    private Integer shopId;
    private Integer isSendMsg;
//    private Integer companyId;


    private Integer provId;

    private Integer cityId;

    private Integer districtId;


    //用户等级  县级  镇级  村级
    private Integer userLevel;

    /**
     *  发证机构类型
     */
    private Integer signOrganType;
    /**
     *  发证机构
     */
    private String signOrgan;
    /**
     *  电焊工证书
     */
    private String certificateNum;

    /**
     *  高空作业证编码
     */
    private String highCertNum;

    /**
     *  电焊工证书图片
     */
    private String certificateImg;
    /**
     *  临时工起始时间
     */
    private Date certBeginTime;

    /**
     *  临时工结束时间
     */
    private Date certEndTime;


    private Integer townId;
    private Integer villageId;
    private Integer isCall;

    private String townName;

    private String villageName;

    /**
     * 是否开启制粒机模块 0 - 不开启 1 - 开启
     */
    private Integer isOpenZhili;
    /**
     * 是否开启筒仓测量模块 0 - 不开启 1 - 开启
     */
    private Integer isOpenRange;

    /**
     *
     */
    private Integer isOpenWelding;
    /**
     *
     */
    private Integer isOpenFirework;

    private String job;


    @TableField(exist = false)
    private String townName1;

    @TableField(exist = false)
    private String villageName1;


    //最后登录时间
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date lastLoginTime;

    @TableField(exist = false)
    private String shopName;

    @TableField(exist = false)
    private String wxNickName;

    @TableField(exist = false)
    private String isGuanZhuMp;

    @TableField(exist = false)
    private String pianquName;//片区的名字

    @TableField(exist = false)
    private Integer checkType;


    @TableField(exist = false)
    private String roleName;
	@Override
    public String toString() {
        return "UserDO{" +
                "userId=" + userId +
                ", username='" + username + '\'' +
                ", name='" + name + '\'' +
                ", password='" + password + '\'' +
                ", deptId=" + deptId +
                ", deptName='" + deptName + '\'' +
                ", email='" + email + '\'' +
                ", mobile='" + mobile + '\'' +
                ", status=" + status +
                ", gmtCreate=" + gmtCreate +
                ", roleId=" + roleId +
                '}';
    }
}
